#include <bits/stdc++.h>
using namespace std;

unordered_map<int, list<int>> q;
int main()
{
	ios::sync_with_stdio(false);
	cin.tie(nullptr);
	cout.tie(nullptr);
	int T, a, x;
	string op;
	cin >> T;
	while (T--)
	{
		cin >> op >> a;
		if (op == "push_back")
		{
			cin >> x;
			q[a].push_back(x);
		}
		else if (op == "pop_back")
		{
			if (!q[a].empty())
			{
				q[a].pop_back();
			}
		}
		else if (op == "push_front")
		{
			cin >> x;
			q[a].push_front(x);
		}
		else if (op == "pop_front")
		{
			if (!q[a].empty())
			{
				q[a].pop_front();
			}
		}
		else if (op == "size")
		{
			cout << q[a].size() << '\n';
		}
		else if (op == "front")
		{
			if (!q[a].empty())
			{
				cout << q[a].front() << '\n';
			}
		}
		else
		{
			if (!q[a].empty())
			{
				cout << q[a].back() << '\n';
			}
		}
	}
	return 0;
}
